home *** CD-ROM | disk | FTP | other *** search
/ SGI Developer Toolbox 6.1 / SGI Developer Toolbox 6.1 - Disc 1.iso / toolbox / documents / OpenGL / extensions / man / glxmakecurrentreadsgi.z / glxmakecurrentreadsgi
Encoding:
Text File  |  1996-11-11  |  9.4 KB  |  199 lines

  1.  
  2.  
  3.  
  4. ggggllllXXXXMMMMaaaakkkkeeeeCCCCuuuurrrrrrrreeeennnnttttRRRReeeeaaaaddddSSSSGGGGIIII((((3333GGGG))))   OOOOppppeeeennnnGGGGLLLL RRRReeeeffffeeeerrrreeeennnncccceeee ---- GGGGLLLLXXXX   ggggllllXXXXMMMMaaaakkkkeeeeCCCCuuuurrrrrrrreeeennnnttttRRRReeeeaaaaddddSSSSGGGGIIII((((3333GGGG))))
  5.  
  6.  
  7.  
  8. NNNNAAAAMMMMEEEE
  9.      ggggllllXXXXMMMMaaaakkkkeeeeCCCCuuuurrrrrrrreeeennnnttttRRRReeeeaaaaddddSSSSGGGGIIII - attach a GLX context to separate read and write
  10.      drawables
  11.  
  12.  
  13. CCCC SSSSPPPPEEEECCCCIIIIFFFFIIIICCCCAAAATTTTIIIIOOOONNNN
  14.      Bool ggggllllXXXXMMMMaaaakkkkeeeeCCCCuuuurrrrrrrreeeennnnttttRRRReeeeaaaaddddSSSSGGGGIIII( Display *_d_p_y,
  15.                                  GLXDrawable _d_r_a_w,
  16.                                  GLXDrawable _r_e_a_d,
  17.                                  GLXContext _g_c )
  18.  
  19.  
  20. PPPPAAAARRRRAAAAMMMMEEEETTTTEEEERRRRSSSS
  21.      _d_p_y   Specifies the connection to the X server.
  22.  
  23.  
  24.      _d_r_a_w  A GLX drawable that receives the results of OpenGL drawing
  25.            operations.
  26.  
  27.  
  28.      _r_e_a_d  A GLX drawable that provides pixels for ggggllllRRRReeeeaaaaddddPPPPiiiixxxxeeeellllssss and
  29.            ggggllllCCCCooooppppyyyyPPPPiiiixxxxeeeellllssss operations.
  30.  
  31.  
  32.      _g_c    A GLX rendering context to be attached to _d_r_a_w and _r_e_a_d.
  33.  
  34.  
  35. DDDDEEEESSSSCCCCRRRRIIIIPPPPTTTTIIIIOOOONNNN
  36.      ggggllllXXXXMMMMaaaakkkkeeeeCCCCuuuurrrrrrrreeeennnnttttRRRReeeeaaaaddddSSSSGGGGIIII performs the same functions as ggggllllXXXXMMMMaaaakkkkeeeeCCCCuuuurrrrrrrreeeennnntttt, with
  37.      one important difference:  it attaches a GLX context to two drawables,
  38.      rather than one.  The second drawable serves as the source for any pixel
  39.      data that are read by ggggllllRRRReeeeaaaaddddPPPPiiiixxxxeeeellllssss, ggggllllCCCCooooppppyyyyPPPPiiiixxxxeeeellllssss, and OpenGL extension
  40.      commands that read color, depth, or stencil data from the framebuffer.
  41.      It may be an ordinary GLX drawable, or it may be a GLX video source (see
  42.      ggggllllXXXXCCCCrrrreeeeaaaatttteeeeGGGGLLLLXXXXVVVViiiiddddeeeeooooSSSSoooouuuurrrrcccceeeeSSSSGGGGIIIIXXXX).
  43.  
  44.      Both _d_r_a_w and _r_e_a_d must be RGBA format.  However, it is not necessary for
  45.      _d_r_a_w and _r_e_a_d to have the same ancillary buffers.
  46.  
  47.      It is also not necessary for _r_e_a_d to contain a buffer corresponding to
  48.      the current GGGGLLLL____RRRREEEEAAAADDDD____BBBBUUUUFFFFFFFFEEEERRRR of _g_c.  For example, the current
  49.      GGGGLLLL____RRRREEEEAAAADDDD____BBBBUUUUFFFFFFFFEEEERRRR of _g_c might be GGGGLLLL____BBBBAAAACCCCKKKK, and _r_e_a_d might be single-buffered.
  50.      If there is no corresponding buffer in _r_e_a_d, then the pixel values
  51.      extracted from _r_e_a_d will be undefined, but no error will be generated.
  52.      Operations that query the value of GGGGLLLL____RRRREEEEAAAADDDD____BBBBUUUUFFFFFFFFEEEERRRR use the value set last
  53.      in _g_c, regardless of whether _r_e_a_d has the corresponding buffer.
  54.  
  55.      ggggllllXXXXMMMMaaaakkkkeeeeCCCCuuuurrrrrrrreeeennnnttttRRRReeeeaaaaddddSSSSGGGGIIII returns TTTTrrrruuuueeee if it is successful, FFFFaaaallllsssseeee otherwise.
  56.      If FFFFaaaallllsssseeee is returned, the previously current rendering context and
  57.      drawables (if any) remain unchanged.
  58.  
  59.  
  60.  
  61.  
  62.  
  63.                                                                         PPPPaaaaggggeeee 1111
  64.  
  65.  
  66.  
  67.  
  68.  
  69.  
  70. ggggllllXXXXMMMMaaaakkkkeeeeCCCCuuuurrrrrrrreeeennnnttttRRRReeeeaaaaddddSSSSGGGGIIII((((3333GGGG))))   OOOOppppeeeennnnGGGGLLLL RRRReeeeffffeeeerrrreeeennnncccceeee ---- GGGGLLLLXXXX   ggggllllXXXXMMMMaaaakkkkeeeeCCCCuuuurrrrrrrreeeennnnttttRRRReeeeaaaaddddSSSSGGGGIIII((((3333GGGG))))
  71.  
  72.  
  73.  
  74. EEEERRRRRRRROOOORRRRSSSS
  75.      BBBBaaaaddddMMMMaaaattttcccchhhh is generated if any of the following conditions hold:
  76.  
  77.           1.   _d_r_a_w was not created on the same X screen and visual as _g_c.
  78.  
  79.           2.   _r_e_a_d was not created on the same X screen as _g_c.
  80.  
  81.           3.   _r_e_a_d is not an RGBA drawable or video source.
  82.  
  83.           4.   _d_r_a_w is NNNNoooonnnneeee and _g_c is not NNNNoooonnnneeee.
  84.  
  85.           5.   _d_r_a_w is a GLX video source.
  86.  
  87.      BBBBaaaaddddAAAAcccccccceeeessssssss is generated if _g_c was current to another thread at the time
  88.      ggggllllXXXXMMMMaaaakkkkeeeeCCCCuuuurrrrrrrreeeennnnttttRRRReeeeaaaaddddSSSSGGGGIIII was called.
  89.  
  90.      GGGGLLLLXXXXBBBBaaaaddddDDDDrrrraaaawwwwaaaabbbblllleeee is generated if either _d_r_a_w or _r_e_a_d is not a valid GLX
  91.      drawable.
  92.  
  93.      GGGGLLLLXXXXBBBBaaaaddddCCCCoooonnnntttteeeexxxxtttt is generated if _g_c is not a valid GLX context.
  94.  
  95.      GGGGLLLLXXXXBBBBaaaaddddCCCCoooonnnntttteeeexxxxttttSSSSttttaaaatttteeee is generated if ggggllllXXXXMMMMaaaakkkkeeeeCCCCuuuurrrrrrrreeeennnnttttRRRReeeeaaaaddddSSSSGGGGIIII is called
  96.      between a ggggllllBBBBeeeeggggiiiinnnn and the corresponding call to ggggllllEEEEnnnndddd.
  97.  
  98.      GGGGLLLLXXXXBBBBaaaaddddCCCCoooonnnntttteeeexxxxttttSSSSttttaaaatttteeee is also generated if the rendering context current to
  99.      the calling thread has OpenGL renderer state GGGGLLLL____FFFFEEEEEEEEDDDDBBBBAAAACCCCKKKK or GGGGLLLL____SSSSEEEELLLLEEEECCCCTTTT.
  100.  
  101.      GGGGLLLLXXXXBBBBaaaaddddCCCCuuuurrrrrrrreeeennnnttttWWWWiiiinnnnddddoooowwww is generated if there are pending OpenGL commands for
  102.      the previous context and the current drawable is a window that is no
  103.      longer valid.
  104.  
  105.      BBBBaaaaddddAAAAlllllllloooocccc may be generated if the server has delayed allocation of
  106.      ancillary buffers until ggggllllXXXXMMMMaaaakkkkeeeeCCCCuuuurrrrrrrreeeennnnttttRRRReeeeaaaaddddSSSSGGGGIIII is called, only to find
  107.      that it has insufficient resources to complete the allocation.
  108.  
  109.  
  110.  
  111. MMMMAAAACCCCHHHHIIIINNNNEEEE DDDDEEEEPPPPEEEENNNNDDDDEEEENNNNCCCCIIIIEEEESSSS
  112.      SSSSGGGGIIII____mmmmaaaakkkkeeee____ccccuuuurrrrrrrreeeennnntttt____rrrreeeeaaaadddd is currently supported only on RealityEngine,
  113.      RealityEngine2, and VTX systems.  On these systems: (1) when _r_e_a_d is not
  114.      a video source (see ggggllllXXXXCCCCrrrreeeeaaaatttteeeeGGGGLLLLXXXXVVVViiiiddddeeeeooooSSSSoooouuuurrrrcccceeeeSSSSGGGGIIIIXXXX) it must have the same
  115.      color component resolution as _d_r_a_w.  A BBBBaaaaddddMMMMaaaattttcccchhhh error is generated
  116.      otherwise; (2) when _d_r_a_w is a pixmap then _r_e_a_d must be the same pixmap.
  117.      A BBBBaaaaddddAAAAlllllllloooocccc error is generated otherwise.
  118.  
  119.      On RealityEngine, RealityEngine2, and VTX systems it is not possible to
  120.      use a context for rendering to both windows and pixmaps.
  121.  
  122.  
  123.  
  124.  
  125.  
  126.  
  127.  
  128.  
  129.                                                                         PPPPaaaaggggeeee 2222
  130.  
  131.  
  132.  
  133.  
  134.  
  135.  
  136. ggggllllXXXXMMMMaaaakkkkeeeeCCCCuuuurrrrrrrreeeennnnttttRRRReeeeaaaaddddSSSSGGGGIIII((((3333GGGG))))   OOOOppppeeeennnnGGGGLLLL RRRReeeeffffeeeerrrreeeennnncccceeee ---- GGGGLLLLXXXX   ggggllllXXXXMMMMaaaakkkkeeeeCCCCuuuurrrrrrrreeeennnnttttRRRReeeeaaaaddddSSSSGGGGIIII((((3333GGGG))))
  137.  
  138.  
  139.  
  140. SEE ALSO
  141.      ggggllllXXXXMMMMaaaakkkkeeeeCCCCuuuurrrrrrrreeeennnntttt
  142.  
  143.  
  144.  
  145.  
  146.  
  147.  
  148.  
  149.  
  150.  
  151.  
  152.  
  153.  
  154.  
  155.  
  156.  
  157.  
  158.  
  159.  
  160.  
  161.  
  162.  
  163.  
  164.  
  165.  
  166.  
  167.  
  168.  
  169.  
  170.  
  171.  
  172.  
  173.  
  174.  
  175.  
  176.  
  177.  
  178.  
  179.  
  180.  
  181.  
  182.  
  183.  
  184.  
  185.  
  186.  
  187.  
  188.  
  189.  
  190.  
  191.  
  192.  
  193.  
  194.  
  195.                                                                         PPPPaaaaggggeeee 3333
  196.  
  197.  
  198.  
  199.